//
// Created by Mzoro on 2022/4/3.
//

#include <stddef.h>

#define MAX_LINE_NUM    1000

/**
 * 读取一行字符串,保存在变量s中
 * @return 如果没有更多文本行，返回0，否则返回1
 */
int readline(char *s);

/**
 * 读取多行文字，将保存在 c 数组中
 * @param c 保存文件的数组
 * @return 读取的行数
 */
int readLines(char *c[]);

/**
 * 申请一个指针
 * @param size 申请的大小
 * @return
 */
char *alloc(size_t size);

/**
 * 释放指针
 * @param s
 */
void aFree(char *s);

/**
 * 按字典顺序排序，快排
 * @param lines 要排序的文本集合
 * @param start 要排序的区间开始
 * @param end 要排序的区间结束
 */
void sort(char *lines[], size_t start, size_t end);

/**
 * 按字典顺序比较两字符串，如果 a< b 返回 -1, 如果 a>b 返回1， 如果相同 返回0
 * @param a
 * @param b
 * @return
 */
int strCompare(char *a, char *b);

/**
 * 将数组中的 p1和p2 元素交换位置
 * @param lines
 * @param p1
 * @param p2
 */
void swap(char *lines[], size_t p1, size_t p2);